import { storeToRefs } from 'pinia';
import dayjs from 'dayjs'
import relativeTime from 'dayjs/plugin/relativeTime'
import 'dayjs/locale/zh-cn'


// 判断是否是移动端
export const UtilsIsMobile = () => {
   if (process.server) {
      let UA = useRequestHeaders(['user-agent']);
      return /mobile/gi.test(UA['user-agent'] ?? '');
   } else {
      let UA = navigator.userAgent.toLowerCase();
      return /mobile/g.test(UA ?? '');
   }
}

// 图片处理
export const UtilsImage = (URL: string, Thumbnail: boolean = false, size?: number) => {
   const { cnyzs } = storeToRefs(cnyzsCommonpinia())
   if (URL) {
      // 如果是绝对路径就直接返回
      if (URL.indexOf('http') !== -1) return URL
      // 相对路径
      // 判断是什么储存方式，根据储存方式处理图片
      switch (cnyzs.value.COMMON_SPBM.SPBM) {
         case 'local':
            // 本地存储
            return
         case 'cos':
            // 腾讯云COS
            // 判断是否需要缩略图
            if (Thumbnail) {
               if (size) {
                  const T = cnyzs.value.COMMON_SPBM.OPTIONS.COS.STYLE.THUMBNAIL.split('400x')[0] + size + 'x'
                  const IMAGEURL = cnyzs.value.COMMON_SPBM.OPTIONS.COS.ACCESSDOMAIN + URL + '?' + T
                  return IMAGEURL
               } else {
                  const IMAGEURL = cnyzs.value.COMMON_SPBM.OPTIONS.COS.ACCESSDOMAIN + URL + '?' + cnyzs.value.COMMON_SPBM.OPTIONS.COS.STYLE.THUMBNAIL
                  return IMAGEURL
               }
            } else {
               const IMAGEURL = cnyzs.value.COMMON_SPBM.OPTIONS.COS.ACCESSDOMAIN + URL
               return IMAGEURL
            }
         case 'oss':

            return
         case 'kodo':

            return
         case 'uss':

            return
         default:
            return
      }
   }
}

// 平滑回到顶部
export const UtilsScrollTop = () => {
   if (process.client) {
      const c = document.documentElement.scrollTop || document.body.scrollTop;
      if (c > 0) {
         window.requestAnimationFrame(UtilsScrollTop);
         window.scrollTo(0, c - c / 10);
      }

      setTimeout(() => {
         window.scrollTo(0, 0);
      }, 250);
   }
}

// 评论时间处理 
export const UtilsDayjs = (time: number) => {
   dayjs.extend(relativeTime)
   dayjs.locale('zh-cn')
   return dayjs(time).fromNow()
}

// 验证是否是漫画作者或者时超级管理员
export const UtilsisAA = (id: number) => {
   const userinfo = cnyzsUserpinia().userinfo
   //  判断用户ID是否 === 漫画作者ID || 用户ID 是否 === 1 超级管理员
   if (userinfo.id === id || userinfo.id === 1) {
      return true
   } else {
      return false
   }
}